<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>注册 | VigorLoop</title>
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta name="robots" content="all,follow">
    <!-- Bootstrap CSS-->
    <link rel="stylesheet" href="https://www.jq22.com/jquery/bootstrap-4.2.1.css">
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Poppins:300,400,700">
    <link rel="stylesheet" href="/static/bootstrap/css/style.default.css" id="theme-stylesheet">
  </head>
  <body>
    <div class="page login-page">
      <div class="container d-flex align-items-center">
        <div class="form-holder has-shadow">
          <div class="row">
            <!-- Logo & Information Panel-->
            <div class="col-lg-6">
              <div class="info d-flex align-items-center">
                <div class="content">
                  <div class="logo">
                    <h1>欢迎注册</h1>
                  </div>
                  <p>VigorLoop 健康管理系统</p>
                </div>
              </div>
            </div>
            <!-- Form Panel    -->
            <div class="col-lg-6 bg-white">
              <div class="form d-flex align-items-center">
                <div class="content">
                    <div class="form-group">
                      <input id="register-username" class="input-material" type="text" name="registerUsername" placeholder="请输入用户名/姓名" required>
                      <div class="invalid-feedback">
                        用户名必须在2~10位之间
                      </div>
                    </div>
                    <div class="form-group">
                      <input id="register-password" class="input-material" type="password" name="registerPassword" placeholder="请输入密码" required>
                      <div class="invalid-feedback">
                        密码必须在6~10位之间
                      </div>
                    </div>
                    <div class="form-group">
                      <input id="register-passwords" class="input-material" type="password" name="registerPasswords" placeholder="确认密码" required>
                      <div class="invalid-feedback">
                        两次密码必须相同 且在6~10位之间
                      </div>
                    </div>
                    <div class="form-group">
                      <button id="regbtn" type="button" name="registerSubmit" class="btn btn-primary">注册</button>
                    </div>
                  <small>已有账号?</small><a href="/login" class="signup">&nbsp;登录</a>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>

    <!-- JavaScript files-->
    <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script>
    <script src="https://www.jq22.com/jquery/bootstrap-4.2.1.js"></script>
    <script>
      $(function(){
        var flagName = false;
        var flagPas = false;
        var flagPass = false;
        var name, passWord, passWords;

        // 验证用户名
        $("#register-username").change(function(){
          name = $("#register-username").val();
          if(name.length < 2 || name.length > 10){
            $("#register-username").removeClass("form-control is-valid").addClass("form-control is-invalid");
            flagName = false;
          } else {
            $("#register-username").removeClass("form-control is-invalid").addClass("form-control is-valid");
            flagName = true;
          }
        });

        // 验证密码
        $("#register-password").change(function(){
          passWord = $("#register-password").val();
          if(passWord.length < 6 || passWord.length > 18){
            $("#register-password").removeClass("form-control is-valid").addClass("form-control is-invalid");
            flagPas = false;
          } else {
            $("#register-password").removeClass("form-control is-invalid").addClass("form-control is-valid");
            flagPas = true;
          }
        });

        // 验证确认密码
        $("#register-passwords").change(function(){
          passWords = $("#register-passwords").val();
          if((passWord != passWords) || passWords.length < 6 || passWords.length > 18){
            $("#register-passwords").removeClass("form-control is-valid").addClass("form-control is-invalid");
            flagPass = false;
          } else {
            $("#register-passwords").removeClass("form-control is-invalid").addClass("form-control is-valid");
            flagPass = true;
          }
        });

        // 提交按钮
        $("#regbtn").click(function(){
          if(flagName && flagPas && flagPass){
            // 使用 AJAX 提交表单数据
            $.ajax({
              url: '/register/',  // Django 后端处理注册请求的 URL
              type: 'POST',
              data: {
                'username': name,
                'password': passWord,
                'check_password': passWords,
                'csrfmiddlewaretoken': '{{ csrf_token }}',  // 发送 CSRF token
              },
              success: function(response) {
                if(response.success) {
                  location.href = "/login";  // 注册成功后跳转到登录页
                } else {
                  alert(response.error);  // 显示错误信息
                }
              },
              error: function() {
                alert("发生了错误，请稍后再试。");
              }
            });
          } else {
            // 如果验证失败，不提交表单
            if(!flagName) $("#register-username").addClass("form-control is-invalid");
            if(!flagPas) $("#register-password").addClass("form-control is-invalid");
            if(!flagPass) $("#register-passwords").addClass("form-control is-invalid");
          }
        });
      });
    </script>
  </body>
</html>
